/*
 * Created on 2005-7-4
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package org.vsg.common.pagination;

import java.util.Collection;



/**
 * @author vison_ruan
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public interface Pagination {
	
	
	
	// Show the page index number . or reference name "current page " in the other word
	public int getPageIndex();
	
	/**
	 * Return The maxiumn number of items per page
	 * @return The maxiumn number of items per page
	 */
	public int getPageSize();
	
	public boolean isFirstPage() ;
	
	public boolean isLastPage();
	
	public boolean isNextPageAvailable();
	
	public boolean isPreviousPageAvailable();
	
	/**
	 * show the pagination Connection of data Mapping , the collection size  is set to be limited by pagesize 
	 * @return
	 */
	public Collection getPaginationList() ;
	
	// show the all records counter;
	public int getTotalRecord();
	
	
	// show the total pages counter with the current pagesize
	public int getTotalPages();
	
	public int getFirstPageIndex();
	
	public int getLastPageIndex();
	
}
